Économétrie — TD 9
Simulation de Monte Carlo
1 Introduction générale
1.1 1.1 Origines de la méthode
« The Monte Carlo method … is an invention of statistical sampling for the solution of mathematical problems for which direct methods are not feasible. » @metropolis1949.
- Le nom Monte Carlo fait référence au casino de Monaco, symbole du hasard.
- Mise en œuvre pour la première fois dans les années 1940, durant le projet Manhattan en physique nucléaire.
- Objectif initial : approximer des intégrales complexes ou des probabilités impossibles à calculer analytiquement.
Article original Metropolis & Ulam (1949)
1.2 1.2 Idée en économétrie
Une simulation de Monte Carlo est une expérience de pensée codée sur ordinateur :
- Spécifier un modèle théorique connu (par exemple une régression linéaire).
- Fixer les « vrais » paramètres et la distribution de l’erreur (normale, χ², etc.).
- Générer artificiellement de nombreux échantillons de données.
- Estimer sur chacun de ces échantillons le même modèle que l’on veut étudier.
- Observer empiriquement la distribution des estimateurs : biais, variance, forme, robustesse des tests.
La simulation de Monte Carlo agit comme un laboratoire virtuel : elle permet de vérifier et d’illustrer les propriétés théoriques des estimateurs quand la démonstration analytique est complexe ou quand on veut observer leur comportement “en pratique”.
2 2. Mise en œuvre pratique
2.1 2.1 Étapes générales d’une simulation
- Fixer la taille d’échantillon \(n\) et le nombre de répliques \(R\).
- Définir le modèle :
\[ y_i = \alpha + \beta x_i + \varepsilon_i \] avec par exemple \(\varepsilon_i \sim \mathcal{N}(0,1)\). - Pour chaque réplication \(r = 1,\dots,R\) :
- Générer les \(x_i\) et les erreurs \(\varepsilon_i\).
- Calculer \(y_i\).
- Estimer \((\hat\alpha_r,\hat\beta_r)\) par MCO.
- Analyser la distribution empirique des \(\hat\beta_r\) : moyenne, variance, skewness, kurtosis, comparaison à la valeur vraie \(\beta\).
2.2 2.2 Commandes EViews utiles
| Action | Commande |
|---|---|
| Générer une normale centrée réduite | series e = nrnd |
| Générer une loi χ²(v) | series e = @rchisq(v) |
| Créer une variable simulée | series y1 = 7 + 0.4*lsize + 0.8*bed + 0.2*bath + 0.2*airco + e |
| Estimer par MCO | ls y1 c lsize bed bath airco |
| Lancer un programme | run Montecarlo.prg |
3 3. Exemple R : animation de la convergence
Ce graphique illustre la loi des grands nombres : à mesure que le nombre d’itérations augmente, l’histogramme des $\hat\beta$ se resserre autour de la vraie valeur \(\beta=2\).
4 Questions du TD et réponses détaillées
4.1 Q1 — Générer y1 et estimer
En supposant $\varepsilon \sim \mathcal{N}(0,1)$, générez une série y1 et estimezl’équation par MCO.
Afficher la réponse
EViews :
series e = nrnd
series y1 = 7 + 0.4*lsize + 0.8*bed + 0.2*bath + 0.2*airco + e
ls y1 c lsize bed bath airco
Les coefficients estimés doivent être proches des valeurs vraies (0.4, 0.8, 0.2, 0.2) avec de légères fluctuations aléatoires.
4.2 Q2 — Répéter y2…y5
Refaire la Q1 pour y2 à y5, même modèle, nouvelles erreurs.
Afficher la réponse
Même démarche en changeant le nom de la série (y2, y3 …). Comparer les \(\hat\beta\) obtenus : on doit observer une dispersion autour des valeurs vraies, illustrant la variabilité d’échantillonnage.
4.3 Q3 — Programme Monte Carlo
Ouvrez
Montecarlo.prg, exécutez-le. Les coefficients sont enregistrés dans la matriceresultat. Faites un histogramme et calculez moyenne, variance, skewness, kurtosis.
Afficher la réponse
run Montecarlo.prg
Puis View → Descriptive Statistics → Histogram & Stats sur chaque colonne de resultat.
Les estimateurs doivent avoir :
une moyenne proche du vrai paramètre (absence de biais),
une variance reflétant la précision,
skewness ≈ 0 et kurtosis ≈ 3 si les erreurs sont normales.
4.4 Q4 — 1000 itérations
Appliquer la même procédure avec 1000 itérations.
Afficher la réponse
Dans Montecarlo.prg, modifier :
!nbiter = 1000
et exécuter.
La moyenne des \(\hat\beta\) se rapproche encore plus de la valeur vraie,
et la variance estimée se stabilise — illustration de la loi des grands nombres.
4.5 Q5 — Variance d’erreur différente
Refaire 1–4 en supposant \(\varepsilon \sim \mathcal{N}(0,0.625)\), 1000 puis 5000 simulations.
Afficher la réponse
series e = sqrt(0.625)*nrnd
Une variance d’erreur plus faible ⇒ des estimateurs plus précis (variance plus faible).
Avec 5000 simulations, l’évaluation des moments (moyenne, variance, skewness, kurtosis) devient plus stable.
4.6 Q6 — Erreurs non normales
Refaire 1–4 avec \(\varepsilon \sim \chi^2(7)\), 1000 puis 5000 simulations.
Afficher la réponse
series e = @rchisq(7)
La distribution est asymétrique (skewness > 0). Les MCO restent asymptotiquement sans biais, mais les tests t/F, fondés sur la normalité, peuvent avoir un risque de première espèce mal calibré.
⇒ Utiliser des erreurs-types robustes (White, HAC) ou des tests non paramétriques pour l’inférence.
5 5. Points clés à retenir
La simulation de Monte Carlo est un outil de validation empirique : elle confirme les propriétés théoriques des estimateurs et permet de tester la robustesse des procédures statistiques.
Les estimateurs MCO restent sans biais même si les erreursne sont pas normales, mais l’inférence (tests t/F) peut devenir peu fiable en petit échantillon.
En cas de non-normalité, recourir à des erreurs-types robustes ou à des méthodes d’inférence alternatives (bootstrap, tests non paramétriques).